// pages/index/index.js

// 引入腾讯地图 SDK
const QQMapWX = require('../../lib/qqmap-wx-jssdk.js');
let qqmapsdk;

Page({
    data: {
        location: '',
        latitude: 0,
        longitude: 0,
        markers: []
    },
    luxian() {
        let plugin = requirePlugin('routePlan');
        let key = 'RVPBZ-X7RKI-2YGGS-UMLIW-JANZK-3TBWZ';  // 使用在腾讯位置服务申请的key
        let referer = '路线';   // 调用插件的app的名称
        let endPoint = JSON.stringify({  // 终点
            'name': '北京西站',
            'latitude': 39.894806,
            'longitude': 116.321592
        });
        wx.navigateTo({
            url: 'plugin://routePlan/index?key=' + key + '&referer=' + referer + '&endPoint=' + endPoint
        });
    },
    onLoad: function () {
        this.luxian();
        // 实例化腾讯地图 SDK
        qqmapsdk = new QQMapWX({
            key: 'RVPBZ-X7RKI-2YGGS-UMLIW-JANZK-3TBWZ' // 这里填写申请到的腾讯地图密钥（key）
        });
        this.getCurrentLocation();
    },

    // 获取当前位置并转换为地址信息
    getCurrentLocation: function () {
        let that = this;

        // 获取当前位置的经纬度
        wx.getLocation({
            type: 'gcj02', // 返回可用于 wx.openLocation 的坐标
            success: function (res) {
                const latitude = res.latitude;
                const longitude = res.longitude;
                // 调用腾讯地图 SDK 的逆地理编码方法，将经纬度转换为位置信息
                qqmapsdk.reverseGeocoder({
                    location: {
                        latitude: latitude,
                        longitude: longitude
                    },
                    success: function (addressRes) {
                        const locationName = addressRes.result.address;
                        // 更新页面数据
                        that.setData({
                            location: locationName,
                            latitude: latitude,
                            longitude: longitude,
                            markers: [{
                                id: 0,
                                latitude: latitude,
                                longitude: longitude,
                                width: 30,
                                height: 30,
                                iconPath: '/resources/location.png', // 替换为您实际的图标路径
                                callout: {
                                    content: '当前位置\n' + locationName,
                                    color: '#404040',
                                    bgColor: '#ffffff',
                                    borderWidth: 1,
                                    borderColor: '#8a8a8a',
                                    fontSize: 14,
                                    padding: 10,
                                    borderRadius: 10,
                                    display: 'ALWAYS'
                                }
                            }]
                        });
                    },
                    fail: function (error) {
                        console.error(error);
                    }
                });
            },
            fail: function (error) {
                console.error(error);
            }
        });
    }
});